package com.stox.services.screener.model.intf;

import com.stox.services.screener.screen.gainer.GainerScreen;
import com.stox.services.screener.screen.loser.LoserScreen;
import com.stox.shared.screener.model.ScreenBeanDescriptor;
import com.stox.shared.screener.model.ScreenerConfiguration;


public interface Screen<T extends ScreenConfiguration> {
	
	public static final Screen<?>[] ALL = {GainerScreen.INSTANCE, LoserScreen.INSTANCE};
	
	public ScreenBeanDescriptor getScreenBeanDescriptor();
	
	public void screen(String scanId, ScreenerConfiguration screenerConfiguration, T screenConfiguration);
	
	public String getKey();
	
}
